package com.ukao.pad.base;

import android.app.Application;
import android.content.Context;
import android.support.multidex.MultiDex;

import com.liulishuo.filedownloader.FileDownloader;
import com.tencent.bugly.Bugly;
import com.tencent.bugly.beta.Beta;
import com.ukao.pad.ui.LoginActivity;
import com.ukao.pad.ui.MainActivity;
import com.ukao.pad.utils.CheckUtils;
import com.ukao.pad.utils.Utils;

import cn.jiguang.analytics.android.api.JAnalyticsInterface;

import static cn.jiguang.analytics.android.d.f;


/**
 * Created by ukaodev on 2017/5/20.
 */

public class BaseApplication extends Application {
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
        //安装Tinker
       Beta.installTinker();
    }
    /**
     * 初始化的资源  全部写在这个里面onCreate()
     */
    @Override
    public void onCreate() {
        super.onCreate();
        Utils.init(this);
        FileDownloader.init(this); /*下载文件初始化*/
        JAnalyticsInterface.init(this );
        JAnalyticsInterface.setDebugMode(false);
        checkUpdates();
    }

    /**
     * 检查更新
     */
    private void checkUpdates() {
        // 设置是否开启热更新能力，默认为true
        Beta.enableHotfix = true;
        // 设置是否自动下载补丁
        Beta.canAutoDownloadPatch = true;
        //设置是否提示用户重启
        Beta.canNotifyUserRestart = true;
        // 设置是否自动合成补丁
        Beta.canAutoPatch = true;
        //Bugly.setIsDevelopmentDevice(getApplicationContext(), true);   开发设备

       // 自动检查更新开关
        Beta.autoCheckUpgrade = CheckUtils.isMIUIDevices()?false:true;
        if (!CheckUtils.isMIUIDevices()){
            Beta.initDelay = 100;/*设置启动延时为1s（默认延时3s），APP启动1s后初始化SDK，避免影响APP启动速度*/
            //添加可以显示 弹出升级框的
            Beta.canShowUpgradeActs.add(MainActivity.class);
            Beta.canShowUpgradeActs.add(LoginActivity.class);
        }
        // 这里实现SDK初始化，appId替换成你的在Bugly平台申请的appId
        // 调试时，将第三个参数改为true
        Bugly.init(getApplicationContext(),"68fe394402",false);
    }
}
